package zi.fu.fan.zhuan;

import org.apache.commons.io.FileUtils;
import org.junit.Test;
import org.springframework.util.StringUtils;

import java.io.File;
import java.io.IOException;
import java.lang.String;
import sun.security.util.AuthResources_it;

/**
 * Created by Admin on 1/5 0005.
 */
public class StringUtilsTest {
    public void sop(Object obj){
        System.out.println(obj);
    }
    @Test
    public void test(){
        String str="";
        String str1="1223";
        String str2="122334342131";
        boolean b=StringUtils.isEmpty(str);
        sop(b);

    }
    @Test
    public void test1(){
        FileUtils.getUserDirectory();
    }
    @Test
    public void test2(){
       String str="12312,rsdfw,456456,sdgf,df,yu76,8,s,asd,fsdu,56,7,gsd,g";
        StringBuilder sb=new StringBuilder();
        String[] ss=str.split(",");
        for(String s:ss){
            sb.append(s);
        }
        System.out.println(sb);
    }
    @Test
    public void test3() throws IOException {
        File file=new File("d:\\a.txt");
        //由于操作系统的不同,可以使用separator来代替\\
        //这样就可以跨平台使用
       File file1=new File("e:"+File.separator+"aa"+File.separator+"a"+File.separator+"b.txt");
        sop(file.delete());
    }

    /*
        File 中常用的方法:
         1.创建: boolean createFile(): 在指定位置创建文件,如果该文件已经存在,则不创建
                         返回false,和输出流不一样,输出流对象一建立就创建文件,而且,如果文件存在会覆盖原文件;
                    boolean  mkDir():创建文件目录
                    boolean mkDirs():创建多级文件目录
        2.删除:
              boolean delete();删除失败,返回false
              void deleteOnExit();在程序退出时删除指定文件;
        3.判断:
          canExecute():是否可执行;
          boolean exists();文件是否存在;*****
          isHidden();是否回一个隐藏文件

          boolean isFile()是否个文件
          boolean isDirectory()是否文件目录

          记住: 在判断文件对象是否是文件或者目录时,必须先判断该文件对象封装的内容
                是否存在,通过exists判断;

        4.获取信息:
                getName()获取文件名
                getPath()获取文件路径
                getAbsoluteFile()绝对的文件名
                getAbsolutePath()绝对的文件路径
                getParent()获取上一层文件目录
                renameTo(File newName)把一个文件改成另一个文件

                lastModified()文件最后修改时间
                length()文件的内容大小

     */

    @Test
    public void test4() throws IOException {
        File file=new File("d:\\abc.txt");
        boolean b=file.createNewFile();
        File  file1=new File("d:\\file");
        File file2=new File("d:\\file\\list\\string");
        boolean b4=file1.mkdir();
        boolean b5=file2.mkdirs();
        //file.delete();
        boolean b1=file.exists();
        boolean b2=file.isFile();//是否为文件
        boolean b3=file1.isDirectory();//是否为目录
        sop(b);
        sop(b1);
        sop(b2);
        sop(b3);
        sop(b4);
        sop(b5);
        sop(file.getName());
        sop(file.getPath());
        sop(file.getParent());
        sop(file.getAbsoluteFile());
        sop(file.getAbsolutePath());
        sop(file.length());
        sop(file.lastModified());
    }

}
